]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
viewSelector: Don't re-navigate into the active page
authorFlorian Müllner <fmuellner@gnome.org>
Fri, 23 May 2014 15:14:20 +0000 (17:14 +0200)
committerFlorian Müllner <fmuellner@gnome.org>
Tue, 27 May 2014 17:49:06 +0000 (19:49 +0200)
Starting keynav into the active page is handled from a key-press
handler on the stage, however we should not "start" keynav when
we are already navigating elsewhere - the latter can happen when
keynav fails (for instance because the focus is trapped inside an
open app folder or at the end of the dash), and the event bubbles
up to the stage. So make sure to only handle the event to actually
start keynav, to not interfere with the normal navigation handling.

Thanks to Carlos Soriano <carlos.soriano89@gmail.com> for the
debugging footwork.

https://bugzilla.gnome.org/show_bug.cgi?id=726760

js/ui/viewSelector.js

index 7dacc47bc0d90c00c51ad8f64f96028b4b142ac4..4d629793b8b772a073092fbf205e5d179ef1690a 100644 (file)
@@ -282,7 +282,7 @@ const ViewSelector = new Lang.Class({
             return Clutter.EVENT_STOP;
         } else if (this._shouldTriggerSearch(symbol)) {
             this.startSearch(event);
-        } else if (!this._searchActive) {
+        } else if (!this._searchActive && !global.stage.key_focus) {
             if (symbol == Clutter.Tab || symbol == Clutter.Down) {
                 this._activePage.navigate_focus(null, Gtk.DirectionType.TAB_FORWARD, false);
                 return true;